﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities.Auditing;

namespace WMSSystem.DYB
{
    /// <summary>
    /// 仓位管理实体
    /// </summary>
    public class PositionManagement:AuditedAggregateRoot<Guid>
    {
       /// <summary>
        /// 库位编码
        /// </summary>
        [Description("库位编码")]
        public Guid LocationManagementId { get; set; }

        /// <summary>
        /// 仓位编号
        /// </summary>
        [Description("仓位编号")]
        [MaxLength(100)]
        public string Code { get; set; }

        /// <summary>
        /// 仓位名称
        /// </summary>
        [Description("仓位名称")]
        [MaxLength(100)]
        public string Name { get; set; }

        /// <summary>
        /// 仓位容量
        /// </summary>
        [Description("仓位容量")]
        public int Capacity { get; set; }

        /// <summary>
        /// 仓位主管(外键)
        /// </summary>
        [Description("仓位主管(外键)")]
        public Guid PositionSupervisorId { get; set; }

        /// <summary>
        /// 仓位状态
        /// </summary>
        [Description("仓位状态")]
        public bool State { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        [Description("备注")]
        [MaxLength(255)]
        public string Remark { get; set; }

        /// <summary>
        /// 存储物品
        /// </summary>
        [Description("存储物品")]
        [MaxLength(100)]
        public string? StoreItems { get; set; }

        /// <summary>
        /// 数量
        /// </summary>
        [Description("数量")]
        public int? Num { get; set; }

        /// <summary>
        /// 有效期
        /// </summary>
        [Description("有效期")]
        [MaxLength(100)]
        public string? ExpirationDate { get; set; }
    }
}
